package negocio;

import conexion.Conexion;
import conexion.Sql;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;


public class Tipo_egreso 
{
    String codigo;
    String nombre;
    double rete;
    int base;
    

    public Tipo_egreso() 
    {
    }

    public Tipo_egreso(String codigo, String nombre, double rete, int base) 
    {
        this.codigo = codigo;
        this.nombre = nombre;
        this.rete = rete;
        this.base = base;
    }

    public String getCodigo()
    {
        return codigo;
    }

    public String getNombre() 
    {
        return nombre;
    }
    public double getRete() 
    {
        return rete;
    }
    public int getBase() 
    {
        return base;
    }
    
    public boolean insertarTipo_egreso()
    {
        boolean ok=false;
        //conexion conex = new Conexion();
        String sql = "INSERT INTO tipo_egreso(codigo,nombre,rete,base) values('"+codigo+"','" +nombre+"','" +rete+"','" +base+"')";
        //Sql.ejecuta(sql);
         
        if (Sql.ejecuta(sql)==null)
           {
            ok=true;
           }
          else
           {
            System.out.println("NO INSERTO " + Sql.ejecuta(sql));
           }

       return ok;
    }

    public ArrayList listaTipo_egreso()
     {
        ArrayList lista = new ArrayList();
        Conexion conex = new Conexion();
        String sql = "select * from tipo_egreso";
        try
        {
          conex.conectar();
          PreparedStatement st = conex.getConnection().prepareStatement(sql);
          ResultSet rs = st.executeQuery();
          //Recorre el objeto y adiciona los registros a la matriz
          while (rs.next())
          {
              lista.add(new Tipo_egreso(rs.getString(1), rs.getString(2), rs.getDouble(3), rs.getInt(4)));
          }
          conex.desconectar();
          }
        
        catch(ClassNotFoundException ex)
          {
            System.out.println(ex);
          }
        
        catch(SQLException ex)
          {
            System.out.println(ex);
          }
        
        return lista;
     }
    
     public ArrayList buscarTipo_egreso(String codigo) throws ClassNotFoundException
    {
        ArrayList lista = new ArrayList();
        boolean ok=false;
        Conexion conex = new Conexion();
        String sql = "Select * from tipo_egreso where codigo=?";
        
        try
          {
            conex.conectar();
            PreparedStatement ps = conex.getConnection().prepareStatement(sql);
            ps.setString(1, codigo);
            ResultSet rs = ps.executeQuery();
           
            while (rs.next())
            {
                lista.add(new Tipo_egreso(rs.getString(1), rs.getString(2), rs.getDouble(3), rs.getInt(4)));
            }
            
             conex.desconectar();
          }
         catch(ClassNotFoundException ex)
          {
            System.out.println(ex);
          } 
         catch(SQLException ex)
        {
            System.out.println(ex);
        }
        return lista;
    }
     
     public Tipo_egreso buscarTipo_egreso1(String codigo) throws ClassNotFoundException
    {
        Tipo_egreso e = null;
        boolean ok=false;
        Conexion conex = new Conexion();
        String sql = "Select * from tipo_egreso where codigo=?";
        
        try
          {
            conex.conectar();
            PreparedStatement ps = conex.getConnection().prepareStatement(sql);
            ps.setString(1, codigo);
            ResultSet rs = ps.executeQuery();
           
            if (rs.next())
            {
                e = new Tipo_egreso(rs.getString(1), rs.getString(2), rs.getDouble(3), rs.getInt(4));
            }
            
             conex.desconectar();
          }
         catch(ClassNotFoundException ex)
          {
            System.out.println(ex);
          } 
         catch(SQLException ex)
        {
            System.out.println(ex);
        }
        return e;
    }
     //Método para eliminar un afiliado
    public void eliminarTipo_egreso(String codigo)
     {
         String  sql = "DELETE FROM tipo_egreso WHERE codigo = '" + codigo +"'";
         Sql.ejecuta(sql);        
     }
    
 public void modificarTipo_egreso()
   {
       
        //Conexion conex = new Conexion();
        String  sql = "UPDATE tipo_egreso SET nombre = '"+nombre+"', rete ='"+rete+"', base ='"+base+"' WHERE codigo ='" +codigo+"'";
        Sql.ejecuta(sql);
   }
 

}
